#ifndef __SSD1315_H_
#define __SSD1315_H_

#include "common/base_type.h"

enum TFontTag
{
    kFont6x8 ,  ///< 6*8字体
    kFont8x16,  ///< 8*16字体
};
typedef enum TFontTag TFont;

typedef void (*I2CWriteInterface)(UInt8 addr, UInt8 *data, UInt16 data_len);


//初始化oled屏幕
void TSSD1315_Init(I2CWriteInterface i2c_write);
//清屏
void TSSD1315_Clear(void);
//清行
void TSSD1315_ClearRow(UInt8 i);
//开启OLED显示
void TSSD1315_DisplayOn(void);
//关闭OLED显示
void TSSD1315_DisplayOff(void);

//在指定位置显示一个字符,包括部分字符
//x:0~127
//y:0~63
//mode:0,反白显示;1,正常显示
//size:选择字体 16/12
void TSSD1315_ShowChar(UInt8 x, UInt8 y, UInt8 chr, TFont font);

 //显示数字
//x,y :起点坐标
//len :数字的位数
//size:字体大小
//mode:模式	0,填充模式;1,叠加模式
//num:数值(0~4294967295);
void TSSD1315_ShowNum(UInt8 x, UInt8 y, UInt32 num, TFont font);

//显示一个字符号串
void TSSD1315_ShowString(UInt8 x, UInt8 y, UInt8 *chr, TFont font);

//显示一个浮点数，最长长度来限制精度
void TSSD1315_ShowFloat(UInt8 x, UInt8 y, Float num, UInt8 max_len, TFont font);

// //显示汉字
// //hzk 用取模软件得出的数组
// void OLED_ShowCHinese(UInt8 x, UInt8 y, UInt8 no);

#endif  ///< __SSD1315_H_
